クラスメソッドのCDK事情大公開スペシャル#1 で「API Gatewayの自動デプロイができない! 解消したらCDKコントリビュートできた話」というテーマで登壇しました
2024.11.06
こんにちは、リテールアプリ共創部の塚本です。
2024/11/01 にクラスメソッド日比谷オフィスで開催された勉強会イベントクラスメソッドのCDK事情大公開スペシャル#1 で「API Gatewayの自動デプロイができない! 解消したらCDKコントリビュートできた話」というテーマで登壇しました。
登壇資料
こちらの資料では AWS CDK のデプロイ時にAPI Gatewayの自動デプロイができない不具合に遭遇し、解消することでAWS CDKにコントリビュートできた体験談と、サーバーレス構成の実装時に注意すべきポイントについてまとめています。
主な内容は以下のようになっています。
-
問題の概要:
- CDKでデプロイしてもAPI Gatewayが更新されない問題があった。
- 手動デプロイが必要で、深夜リリースを行っていた。
-
原因:
- API GatewayとLambdaのリソースが別々のスタックで定義されていた。
- fromRestApiAttributesで取得したIRestApiにはlatestDeploymentが設定されていない。
-
解決方法:
- 専用のDeploymentStackを作成し、毎回新しいDeploymentを作成するようにした。
-
調査方法:
- CDKのソースコードを解析
- CloudTrailでデプロイ時の流れを確認
-
CDKコントリビューション:
- 公式ドキュメントに注意文言を追加するPRを作成し、マージされた。
-
得られた知見:
- スタック分割の際は注意が必要
- CloudTrailを活用したCDKデプロイの挙動分析
- CDKのソースコードを読むことで問題解決につながる
-
まとめ:
- スタック分割は慎重に行う
- CDKの構成改善はOSSコントリビュートのチャンス
- サーバーレス構成の実装時は制限に注意